Compound machine for scanning and printing and a method thereof

ABSTRACT

An image forming apparatus including a scanner engine and an operation panel is provided, in which the image forming apparatus includes: a display part for displaying a selection screen for selecting a transfer destination of scanned data from among a plurality of transfer destinations on the operation panel; a scanning process part for causing the scanner engine to scan a document to produce scanned data; and a transfer part for transferring the scanned data to one or more selected transfer destinations.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an image forming apparatus thatprovides user services relating to image forming processes such ascopying, printing, scanning, facsimile and the like. More particularly,the present invention relates to an image forming apparatus and ascanned data process method for transferring scanned data to a Webserver and the like on the Internet.

2. Description of the Related Art

Recently, an image forming apparatus (to be referred to as a compoundmachine hereinafter) that includes functions of a printer, a copier, afacsimile, a scanner and the like in a cabinet is generally known. Thecompound machine includes a display part, a printing part and an imagepickup part and the like in a cabinet. In the compound machine, threepieces of software corresponding to the printer, copier and facsimilerespectively are provided, so that the compound machine functions as theprinter, the copier, the scanner and the facsimile respectively byswitching the software.

Since the conventional compound machine is provided with each softwarefor the printer, the copier, the scanner and the facsimile individually,much time is required for developing the software. Therefore, theapplicant has developed an image forming apparatus (compound machine)including hardware resources, a plurality of applications, and aplatform including various control services provided between theapplications and the hardware resources. The hardware resources includea display part, a printing part and an image pickup part, and are usedfor image forming processes. The applications perform processesintrinsic for user services of printer, copier and facsimile and thelike. The platform includes various control services performingmanagement of hardware resources necessary for at least two applicationscommonly, performing execution control of the applications, and imageforming processes, when a user service is executed.

According to such a compound machine, the scanned data produced byscanning a document by the scanner is immediately printed or stored in astorage such as a hard disk.

However, there is a case in which it is necessary to store scanned datain a computer on a network rather than in the compound machine. That is,since the compound machine is frequently used by many users, failure ofthe compound machine or failure of a storage in the compound machine mayarise. In such a case, the scanned data in the compound machine can notbe read out.

In addition, in a case in which many compound machines are connected onthe network, if the number of pieces of scanned data managed in eachcompound machine increases, it is necessary to determine which compoundmachine stores scanned data to be used. Thus, efficiency for usingscanned data is not good.

SUMMARY OF THE INVENTION

An object of the present invention is to provide an image formingapparatus and a scanned data process method for using scanned dataefficiently and for improving security of scanned data.

The above object is achieved by an image forming apparatus including ascanner engine and an operation panel, the image forming apparatusincluding:

a display part for displaying a selection screen for selecting atransfer destination of scanned data from among a plurality of transferdestinations on the operation panel;

a scanning process part for casing the scanner engine to scan a documentto produce scanned data;

a transfer part for transferring the scanned data to one or moreselected transfer destinations.

According to the present invention, since the scanned data can betransferred to a transfer destination, scanned data can be protectedagainst failure of the image forming apparatus, so that the scanned datacan be used efficiently. In addition, storage capacity of the imageforming apparatus for the scanned data can be saved.

In image forming apparatus, the one or more selected transferdestinations may include one or more of a storing area on a WEB serveron a network, a mail destination, and a shared storing area on anetwork. According to the present invention, the convenience of theusers can be improved.

If authentication information is required for accessing the storing areaor the shared storing area, the display part may display a screen forinputting the authentication information when the storing area or theshared storing area is selected.

In the image forming apparatus, the display part may display a screenfor selecting a data type of scanned data to be transferred among from aplurality of data types, and the transfer part converts the scanned datainto data of the data type, and transfers the data of the data type.Accordingly, the scanned data can be converted into various types ofdata and can transferred.

The plurality of data types may include a type of recognized data thatis obtained by performing character recognition process on the scanneddata. When the recognized data is selected as a data type, the transferpart can send the recognized data and the scanned data to a transferdestination. According to the present invention, characters and an imagecan be stored in a transfer destination.

The compound machine may include a print process part for receiving thescanned data from a storing area of the transfer destination and printthe scanned data. According to this configuration, the scanned data canbe printed by the image forming apparatus without using the clientterminal, so that efficiency for using the scanned data can be improved.

In the image forming apparatus, the print process part may display, onthe operation panel, a data selection screen for displaying a list ofscanned data stored in the storing area, and print scanned data selectedfrom the list. The user can select desired scanned data according tothis configuration.

BRIEF DESCRIPTION OF THE DRAWINGS

Other objects, features and advantages of the present invention willbecome more apparent from the following detailed description when readin conjunction with the accompanying drawings, in which:

FIG. 1 shows main parts of the compound machine and a networkconfiguration including the compound machine according to the firstembodiment of the present invention;

FIG. 2 is a block diagram of the functional configuration of thecompound machine of the first embodiment;

FIG. 3 is a block diagram of the hardware configuration of the compoundmachine of the first embodiment;

FIG. 4 is a flowchart showing a procedure for scanning a document andtransferring scanned data to the Web server by the SCAN to WEBapplication;

FIG. 5A is an example of the function selection screen displayed on theoperation panel;

FIG. 5B is an example of login screen;

FIG. 5C is an example of a storing directory selection screen;

FIG. 6 shows main parts of the compound machine and a networkconfiguration including the compound machine according to the secondembodiment;

FIG. 7 is a flowchart showing the procedure of the printing process bythe SCAN to WEB application;

FIG. 8A shows an example of a function selection screen according to thesecond embodiment;

FIG. 8B shows an example of a scanned data file list screen according tothe second embodiment;

FIG. 9 shows main parts of the compound machine and a networkconfiguration including the compound machine according to the thirdembodiment;

FIG. 10 is a block diagram of the compound machine according to thethird embodiment;

FIG. 11 is a flowchart showing the procedure of scanning process,character recognition process and process for transferring recognizeddata file to the Web server according to the third embodiment;

FIG. 12 shows a main configuration of the compound machine of the fourthembodiment;

FIG. 13 is a figure for explaining formats for specifying storinglocations according to the fifth embodiment;

FIG. 14 shows a screen in which it is determined to send OCR data to aspecified directory in a WEB server according to the fifth embodiment;

FIG. 15 is a screen for selecting destination types according to thefifth embodiment;

FIG. 16 is a screen for selecting destinations according to the fifthembodiment;

FIG. 17 is a screen for selecting data types according to the fifthembodiment;

FIG. 18 is a block diagram showing a configuration of an applicationaccording to the fifth embodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In the following, the image forming apparatus and the scanned dataprocess method will be described with reference to figures.

(First Embodiment)

FIG. 1 shows main parts of the image forming apparatus (to be referredto as a compound machine) and a network configuration including thecompound machine. The compound machine 100 of the first embodimentgenerates a scanned data file by performing scanning process by thescanner engine 103. The compound machine 100 transfers the scanned datafile to a Web server 300 on the Internet. The Web server 300 stores thescanned data file in a storing directory 302 which is a shared area inthe hard disk drive 301. A PC (personal Computer) 200 on the Internet170 can access the Web server 300 and the PC 200 displays the scanneddata file and prints the scanned data file.

As shown in FIG. 1, the compound machine of this embodiment is connectedto the Internet 170 to which the Web server 300 and the PC 200 areconnected, in which the PC 200 is a client terminal of the Web server300 and TCP/IP is used as the communication protocol for the compoundmachine 100, the Web server 300 and the PC 200.

As shown in FIG. 1, main parts for realizing the scanned data processingmethod in the compound machine 100 includes a SCAN to WEB application117, an OCS function library 164, an image function library 165, aftermentioned control services such as OCS 126, SCS 122, ECS 124 and MCS125, inetd 141 and httpd 142 that operate as daemon in the general OS, ascanner engine 103, a network controller 104 and an operation panel 150.

The SCAN to WEB application 117 transfers image data of a documentobtained by scanning the document to the Web server 300 on the Internet170. The SCAN to WEB application 117 is a process running on the aftermentioned application layer. As shown in FIG. 1, the SCAN to WEBapplication 117 includes an authentication process part 161, a scanningprocess part 162, a transfer part 163. The OCS function library 164 andthe image function library 165 are dynamically linked to the SCAN to WEBapplication.

To log on to the Web server 300, the authentication process part 161displays a login screen on an operation display part of the operationpanel 150 and sends a user ID and a password input from the login screento the Web server 300 as encrypted data. The transmission of theencrypted data is performed by https protocol via the httpd 142 and thenetwork controller 104.

The scanning process part 162 controls execution of scanning of thescanner engine 103 by calling functions for scanning that are registeredin the image function library 165. In addition, the scanning processpart 162 converts the image data obtained by scanning a document intoTIFF format to generate scanned data.

The transfer part 163 transfers the scanned data generated by thescanning process part to the Web server 300 on the Internet 170. Thetransmission of the scanned data is performed by using the http protocolvia the httpd 142 and the network controller 104.

The OCS function library 164 registers drawing functions for outputdrawings on the operation display part of the operation panel 150. TheSCAN to WEB application 117 calls the drawing function so that anecessary screen is displayed on the operation display part of theoperation panel 150.

The image function library 165 includes functions for scanning such as ascanning request for the scanner engine 103 and functions for printing.The SCAN to WEB application 117 calles the functions so that scanningprocess is performed by the scanner engine 103. In addition, by thefunction call, requests for the ECS 124 and MCS 125 are performed.

The inetd 141 always monitors data send/receive request. When the inetd141 detects a connection request for a predetermined protocol, the inetd141 launches a server program corresponding to the protocol. The inetd141 is similar to the inetd in UNIX. In the compound machine 100 of thefirst embodiment, the inetd 141 always monitors a port for datasend/receive for the http protocol and the https protocol. When theinetd 141 detects a connection request on the port, the inetd 141launches the httpd 142.

The httpd 142 always monitors port 80 for receiving a message sent byhttp protocol or https protocol. The httpd 142 receives a requestmessage on the port 80, and sends a response message. The structure ofthe response message and the request message is the same as that ofnormal http protocol. Each message includes a message body of htmlformat.

The network controller 104 has capabilities for sending/receiving databy using the http protocol or the https protocol.

The Web server is, for example, a host computer or a work station of anapplication service provider (ASP). A storing directory is prepared inthe hard disk drive (HDD) 301 of the Web server 300 for storing scanneddata sent from the compound machine 100. The storing directory 302 isset to be shared by the compound machine 100 and the PC 200, such thatthe compound machine 100 can write data in the storing directory 302 andthe PC 200 can reads the data from the storing directory 302.

The PC 200 is a Web client of the Web server 300 and requests variousservices from the Web server 300. The PC 200 may be a computer of a useron the Internet 170. In this embodiment, the PC 200 requests the Webserver 300 to display scanned data stored in the HDD 301.

Next, the whole functional configuration of the compound machine 100will be described. FIG. 2 is a block diagram of the compound machineaccording to the first embodiment of the present invention.

As shown in FIG. 2, the compound machine 100 includes hardware resourcesand a software group 110. The hardware resources include a black andwhite line printer (B&W LP) 101, a color laser printer (Color LP) 102,and hardware resources 103 such as a scanner, a facsimile, a hard disk,memory and a network interface. The software group 110 includes aplatform 120, applications 130.

The platform 120 includes control services for interpreting a processrequest from an application and issuing an acquiring request forhardware resources, a system resource manager (SRM) 123 for managing oneor more hardware resources and arbitrating the acquiring requests fromthe control services, and a general-purpose OS 121.

The control services include a plurality of service modules, which are asystem control service (SCS) 122, an engine control service (ECS) 124, amemory control service (MCS) 125, an operation panel control service(OCS) 126, a fax control service (FCS) 127, a network control service(NCS) 128 and a certification control service (CCS) 129. In addition,the platform 120 has application program interfaces (API) that canreceive process requests from the applications 130 by usingpredetermined functions.

The general purpose OS 121 is a general purpose operating system such asUNIX, and can execute each piece of software of the platform 120 and theapplications 130 concurrently as a process.

The process of the SRM 123 is for performing control of the system andfor performing management of resources with the SCS 122. The process ofthe SRM 123 performs arbitration and execution control for requests fromthe upper layer that uses hardware resources including engines such asthe scanner part and the printer part, a memory, a HDD file, a host I/Os(Centronics I/F, network I/F IEEE1394 I/F, RS232C I/F and the like).

More specifically, the SRM 123 determines whether the requested hardwareresource is available (whether it is not used by another request), and,when the requested hardware resource is available, notifies the upperlayer that the requested hardware resource is available. In addition,the SRM 123 performs scheduling for using hardware resources for therequests from the upper layer, and directly performs processescorresponding to the requests (for example, paper transfer and imageforming by a printer engine, allocating memory area, file generation andthe like).

The process of the SCS 122 performs application management, control ofthe operation part, display of system screen, LED display, resourcemanagement, and interrupt application control.

The process of the ECS 124 controls engines of hardware resourcesincluding the white and black laser printer (B&W LP) 101, the colorlaser printer (Color LP) 102, the scanner, and the facsimile and thelike. The process of the MCS 125 obtains and releases an area of theimage memory, uses the hard disk apparatus (HDD), and compresses andexpands image data.

The process of the FCS 127 provides APIs for sending and receiving offacsimile from each application layer by using PSTN/ISDN network,registering/referring of various kinds of facsimile data managed by BKM(backup SRAM), facsimile reading, facsimile receiving and printing, andmixed sending and receiving.

The NCS 128 is a process for providing services commonly used forapplications that need network I/O. The NCS 128 distributes datareceived from the network by a protocol to a corresponding application,and acts as mediation between the application and the network whensending data to the network. More specifically, the process of the NCS128 includes server daemon such as ftpd, httpd, lpd, snmpd, telnetd,smtpd, and client function of the protocols.

The process of the OCS 126 controls an operation panel that is a meansfor transferring information between the operator (user) and controlparts of the machine. In the compound machine 100 of the embodiment, theOCS 126 includes an OCS process part and an OCS function library part.The OCS process part obtains an key event, which indicates that the keyis pushed, from the operation panel, and sends a key event functioncorresponding to the key event to the SCS 122. The OCS function libraryregisters drawing functions and other functions for controlling theoperation panel, in which the drawing functions are used for outputtingvarious images on the operation panel on the basis of a request from anapplication or from the control service. The OCS function library isdynamically linked to the application and each module of the controlservices. All of the OCS 126 can be configured as a process, or can beconfigured as an OCS library.

The application 130 includes a printer application 111 that is anapplication for a printer having page description language (PDL) and PCLand post script (PS), a copy application 112, a fax application 113, ascanner application 114 that is an application for a scanner, a networkfile application 115, a process check application 116 and the abovementioned SCAN to WEB application 117.

Interprocess communication is performed between a process of theapplication 130 and a process of the control service, in which afunction is called, a returned value is sent, and a message is sent andreceived. By using the interprocess communication, user services forimage forming processes such as copying, printing, scanning, and sendingfacsimile are realized.

As mentioned above, the compound machine 100 of the first embodimentincludes a plurality of applications 130 and a plurality of controlservices, and each of those operates as a process. In each process, oneor more threads are generated and the threads are executed in parallel.The control services provide common services to the applications 130.User services on image formation such as copying, printing, scanning andsending facsimile are provided while the processes are executed inparallel, the threads are executed in parallel, and interprocesscommunication is performed. A third party vendor can developapplications for the compound machine 100, and can executes theapplication in an application layer on the control service layer in thecompound machine 100. The authentication may be one of the applications.

In the compound machine 100 of the first embodiment, although processesof applications 130 and processes of control services operate, theapplication and the control service can be a single process. Inaddition, an application in the applications 130 can be added or deletedone by one.

FIG. 3 shows an example of a hardware configuration of the compoundmachine 100.

The compound machine 100 includes a controller 170, an operation panel185, a fax control unit (FCU) 186, and an engine part 187 that ishardware resource such as a printer that is specific for image formingprocessing. The controller 170 includes CPU 171, a system memory 172, anorth bridge (NB) 173, a south bridge (SB) 174, ASIC 176, a local memory177, HDD 178, a network interface card (NIC) 179, a SD card slot 180, aUSB device 181, an IEEE1394 device 182, and a Centronics 183. Thememories 182, 187 may includes RAMs and/or ROMS, for example. The FCU186 and the engine part 187 are connected to the ASIC 176 in thecontroller via a PCI bus 188. The CPU 171 executes programs of theapplication and control services and the like installed in the compoundmachine 100 by reading data from a RAM.

Next, the scanned data processing method in the compound machine 100will be described. FIG. 4 is a flowchart showing a procedure forscanning a document and transferring scanned data to the Web server 300by the SCAN to WEB application 117.

To begin scanning process by the SCAN to WEb application, the usertouches a function selection button in an initial screen displayed onthe operation display part of the operation panel 150. The functionselection screen is displayed on the operation display part 150 a by theSCS 122. FIG. 5A is an example of the function selection screen 410displayed on the operation display part 150 a of the operation panel150.

In the function selection screen 410 shown in FIG. 5A, when the usertouches a “SCAN to WEB”button 412, the OCS 126 receives a key eventcorresponding to the button, and the SCS 122 notifies the SCAN to WEBapplication 117 of the event, so that the SCAN to WEB application 117starts scan data processing.

In the SCAN to WEB application 117, the authentication processing part161 displays a login screen 413 on the operation display part 150 a forthe user to log on to the Web server 300 as shown in FIG. 5B in stepS301. The screen is displayed by calling drawing functions of the OCSfunction library 164. In the following description for displaying dataon the operation display part 150 a, function call for drawing functionis performed.

In the login screen 413, when the user inputs the user ID and thepassword, the authentication processing part 161 receives each key codevia the OCS 126 and the SCS 122. The authentication processing part 161sends the received user ID and the password to the Web server 300, sothat logon to the Web server is performed in step S302.

Next, the authentication processing part 161 receives login result fromthe Web server 300, and determines if the login succeeds or not in stepS303. If login fails, an error message is displayed on the operationdisplay part 150 a in step S304.

If login succeeds, a storing directory selection screen 414 is displayedon the operation display part 150 a of the operation panel 150 by thetransfer part 163 in the SCAN to WEB application 117 in step S305, then,the state enters in an event input waiting state. FIG. 4C is an exampleof the storing directory selection screen 414. As shown in FIG. 5C, alist of directories for storing scanned data is shown in which adirectory can be selected from the list.

The user selects a directory on the Web server 300 from the list, andsets a document to be scanned on the ADF (Auto Document Feeder), andpushes a copy start button.

The transfer part 163 determines whether an event received from the OCS126 via the SCS 122 is the copy start button in step S306. If the eventis the copy start button, scanning process is started by the scanningprocess part 162.

The scanning process part 162 starts scanning the document that is seton the ADF by using the scanner engine 103 by calling a scan functionregistered in the image function library 165 in step S307. The scanningprocess part 162 enters in a waiting state waiting for receiving ascanning process end notification in step S308. At this time, jobgeneration and job start necessary for scanning are performed by the ECS124, and allocation and release of image memory area are performed bythe MCS 125.

When the scanning process part 162 receives the scanning process endnotification, the scanning process part 162 reads scanned image (bit mapdata) stored in an image memory, and converts the scanned image into ascanned data file that is TIFF format in step S309. At this time, thefile name is automatically generated. The compound machine 100 can beconfigured such that the file name of the scanned data can be specifiedby the user.

The transfer part 163 transfers the scanned data file to the Web server300 by specifying the directory that is selected from the storingdirectory selection screen 414 in step S310. More specifically, thetransferring process is performed by the httpd 142 and the networkcontroller 104 that are launched by the inetd 141 in response to aninstruction by the transfer part 163.

The Web server 300 receives the scanned data file from the compoundmachine 100, and stores the received scanned data file in the designatedstoring directory 302 in the HDD 301. At this time, if a characterrecognition application is installed in the Web server 300, thecharacter recognition application recognizes characters in the scanneddata file and the result file is stored in the HDD 301.

As a result, the scanned data file obtained by scanning a document isstored in the shared storing directory 302 in the Web server 300.

Since the storing directory 302 is a shared directory, the storedscanned data file can be displayed on the PC 200 by using the Webbrowser 201. That is, logon to the Web server 300 is performed by usingthe Web browser 201 on the PC 200, so that the PC 200 accesses thestoring directory 302, and the Web browser 201 displays the scanned datafile stored in the storing directory 302. For printing the scanned datafile, when the Web browser 201 displays the scanned data file, thescanned data file can be printed by using a desired printer by usingprinting capability provided by the Web browser 201.

As mentioned above, according to the compound machine 100 of the firstembodiment, the scanning process part 162 in the SCAN to WEB application117 causes the scanner engine 103 to scan a document to generate thescanned data. Then, the transfer part 163 sends the scanned data to theWeb server 300 on the Internet 170. Therefore, the Web server 300 cancollectively manage the scanned data. In addition, even when thecompound machine 100 fails, the scanned data can be kept. Further, thescanned data can be used efficiently.

(Second Embodiment)

According to the compound machine 100 of the first embodiment, since theSCAN to WEB application 117 simply sends the scanned data to the storingdirectory in the Web server 300 that is set to be shared, it isnecessary for the PC 200 to access the Web server 300 for printing thescanned data. On the other hand, according to the compound machine ofthe second embodiment, the compound machine 500 accesses the scanneddata file stored in the storing directory in the Web server 300 so thatthe compound machine itself can print the file.

FIG. 6 shows main parts of the compound machine 500 and a networkconfiguration including the compound machine 500 according to the secondembodiment. As shown in FIG. 6, like the first embodiment, the compoundmachine of the second embodiment is connected to the Internet 170 towhich the Web server 300 and the PC 200 are connected. TCP/IP is usedfor the compound machine 500, the Web server 300 and the PC 200.

For realizing the scanned data processing method of this embodiment, asshown in FIG. 6, the compound machine 500 mainly includes the SCAN toWEB application 517, the OCS function library 164, the image functionlibrary 165, control services such as the OCS 126, the SCS 122, the ECS124 and the MCS 125, the inetd 141, the httpd 142, the scanner engine103, a black and white laser printer (B&W LP) 101, a color laser printer(Color LP) 102, the network controller 104 and the operation panel 105.

The configuration of the SCAN to WEB application 517 is different fromthat of the first embodiment. That is, the SCAN to WEB application 517of the second embodiment includes the authentication part 161, ascanning process part 162, a transfer part 163 and a printing processpart 501. The SCAN to WEB application 517 is different from that of thefirst embodiment in that the SCAN to WEB application 517 includes theprinting process part 501.

The printing process part 501 displays a scanned data file list screenon the operation display part 150 a, in which the scanned data file listscreen shows a list of scanned data files stored in the shared storingdirectory 302. In addition, the printing process part 501 callsfunctions on print processing in the image function library 165, andprints the scanned data file selected from the scanned data file listscreen by the user. Other configurations of the SCAN to WEB application517, the compound machine 500, PC 200 and the Web server 300 are thesame as those of the first embodiment.

Scanning process and transfer process performed by the SCAN to WEBapplication 517 are the same as those of the SCAN to WEB application ofthe first embodiment.

In the following, printing process for the scanned data file by thecompound machine 500 will be described. FIG. 7 is a flowchart showingthe procedure of the printing process by the SCAN to WEB application517.

Before the printing process is started, first, the user touches afunction selection button from the initial screen displayed on theoperation display part 150 a.

Then, the function selection screen is displayed on the operationdisplay part by the SCS 122. FIG. 8A shows an example of the functionselection screen 701 on the operation display part 150 a a.

When the user touches a “SCAN to WEB print”button on the functionselection screen 701, the OCS 126 receives a key event corresponding tothe button, and the event is sent to the SCAN to WEB application by theSCS 122, so that scanned data printing process starts by the SCAN to WEBapplication 517.

In the SCAN to WEB application 517, the authentication process part 161displays the login screen 413 shown in FIG. 5B on the operation displaypart 150 a in step S601. In the login screen 413, when the user inputsthe user ID and the password, the authentication process part 161receives each key code via the OCS 126 and the SCS 122. Theauthentication process part 161 sends the received user ID and thepassword to the Web server 300, so that the user logs on to the Webserver in step S602.

Next, the authentication process part 161 receives the login result fromthe Web server, and determines whether login succeeds or fails in stepS603. When the login fails, an error message is displayed on theoperation display part 150 a in step S604.

When the login succeeds, the printing process part 501 displays thescanned data file list screen 703 on the operation display part 150 a instep S605, and enters event waiting state. FIG. 8B shows an example ofthe scanned data file list screen 703. As shown in FIG. 8B, the scanneddata file list screen 703 shows a list of the scanned data files storedin the storing directory 302 in the Web server 300, in which a scanneddata file can be selected from the list.

The user selects a desired scanned data file from the scanned data filelist screen 703 and pushes a copy start button.

The printing process part 501 determines whether the event received fromthe OCS 126 via the SCS 122 is the copy start button in step S606. Whenthe event is the copy start button, the printing process part 501downloads the selected scanned data file from the Web server 300 in stepS607.

Then, by calling the printing function registered in the image functionlibrary 165, the printing process part 501 starts to print thedownloaded scanned data file by using the black and white laser printeror the color laser printer 102 in step S608. At this time, by theprinting function, job generation and job start necessary for scanningprocess are performed by the ECS 124, and allocation and release ofimage memory area is performed by the MCS 125.

According to the compound machine 500 of the second embodiment, theprinting process part 501 receives the scanned data stored in the Webserver 300, and prints the scanned data. Thus, the scanned data storedin the Web server 300 can be referred to by the compound machine and canbe printed by the compound machine without using the PC 200. Thus,efficiency for using the scanned data improves.

(Third Embodiment)

According to the compound machine of the first and second embodiments,the SCAN to WEB application transfers the scanned data file to the Webserver and the Web server performs character recognition process asnecessary. On the other hand, the compound machine 800 of the thirdembodiment performs character recognition process on the scanned data,and the recognized data file obtained from the character recognitionprocess is transferred to the Web server 300.

FIG. 9 shows main parts of the compound machine and a networkconfiguration including the compound machine according to the thirdembodiment. FIG. 10 is a block diagram of the compound machine 800.

As shown in FIGS. 9 and 10, the compound machine 800 is different fromthe compound machine 100 of the first embodiment in that the compoundmachine 800 includes the OCR application 118. Other configuration is thesame as that of the compound machine 100 of the first embodiment.

The OCR application 118 performs character recognition process on thescanned data generated by the SCAN to WEB application 117 to generate arecognized data file. The generated recognized data file is transferredto the Web server 300 by the transfer part 163 of the SCAN to WEBapplication 117.

FIG. 11 is a flowchart showing the procedure of scanning process,character recognition process and process for transferring recognizeddata file to the Web server 300.

The procedure from displaying login screen to conversion of scanned data(steps S1001-1009) is the same as the corresponding procedure of thefirst embodiment (FIG. 4, steps S301-S309).

When the scanned data is generated, the OCR application 118 receives thegenerated scanned data and performs character recognition process on thedata to generate the recognized data file in step S1010. Then, thetransfer part 163 in the SCAN to WEB application 117 transfers theproduced recognized data file to the Web server 300. This transferprocess is performed by the httpd 142 and the network controller 104launched by the inetd 141 according to the instruction of the transferpart 163 in the same way as the compound machine 100 of the firstembodiment.

Therefore, it is not necessary to perform character recognition processin the Web server 300, and the Web server directly stores the recognizeddata file in the storing directory 302. The compound machine 800 cansend both of the scanned data and the recognized data to the Web server300.

As mentioned above, according to the compound machine 800 of the thirdembodiment, the scanning process part 162 causes the scanner engine 103to scan a document to generate scanned data. Then, the OCS application118 performs the character recognition process on the scanned data.Then, the transfer part 163 of the SCAN to WEB application 117 sends therecognized data to the Web server 300 on the Internet 170. Therefore,the Web server 300 can collectively manage the recognized data so thatthe recognized data can be kept even when the compound machine 800fails, in addition, the recognized data can be used efficiently.

(Fourth Embodiment)

According to the compound machine 800 of the third embodiment, the OCRapplication 118 performs character recognition process on the scanneddata to generate the recognized data file, and the recognized data fileis simply sent to the Web server 300 and the recognized data file isstored in the shared storing directory 302. Thus, for printing therecognized data file, it is necessary for the PC 200 to access the Webserver 300 to print the recognized data file by using the Web browser201 in the PC 200. On the other hand, according to a compound machine1100 of the fourth embodiment, the compound machine 1100 furtheraccesses the Web server 300 to print the recognized data file stored inthe storing directory in the Web server 300.

FIG. 12 shows a main configuration of the compound machine 1100 of thefourth embodiment. As shown in FIG. 12, the compound machine 1100 isdifferent from the compound machine 800 of the third embodiment in thatthe compound machine 1100 includes the printing process part 501 in theSCAN to WEB application 117. Other parts are the same as those of thecompound machine 800.

The printing process part in the SCAN to WEB application 117 prints arecognized data file selected by the user among from recognized datafiles stored in the storing directory that is shared. The printingprocess by the printing process part 501 is the same as that of thecompound machine 500 of the second embodiment (FIG. 7).

Therefore, according to the compound machine 1100 of the fourthembodiment, the printing process part 501 receives the recognized datafrom the Web server, and prints the recognized data. Therefore, therecognized data can be printed without using the PC 200, so thatefficiency for using the recognized data can be further improved.

(Fifth Embodiment)

According to the embodiments described so far, the SCAN to WEBapplication sends the scanned data to the WEB server 300. On the otherhand, according to the compound machine 1200 of the fifth embodiment,the scanned data can be also sent to transfer destinations other thanthe WEB server.

The compound machine 1200 includes a SCAN to Mail application and a SCANto File application in addition to the SCAN to WEB application. Theconfiguration of the other parts is the same as that shown in FIGS. 2and 3. The SCAN to Mail application is an application for sendingscanned data to a designated mail address. The SCAN to File applicationis an application for storing a scanned data in a designated location.The SCAN to File application can use FTP, NFS, NetBIOS and the like. Touse NetBIOS means, for example, to use the mechanism of the shared fileof Windows network.

As to the SCAN to WEB application, the storing directory can bespecified by the form shown in FIG. 5C. As to the SCAN to Mailapplication and the SCAN to File application, the storing location canbe specified by using addresses shown in FIG. 13. In addition, thecompound machine 1200 is configured such that a plurality of transferdestinations can be selected.

Each configuration of the SCAN to Mail application and the SCAN to Fileapplication is similar to that of the SCAN to WEB application 117. Thatis, each of the SCAN to Mail application and the SCAN to Fileapplication includes the scanning process part and the transfer part.The transfer part of the SCAN to Mail application has a capability tosend the scanned data to a designated address as an e-mail. The transferpart of the SCAN to File application has a capability to store thescanned data in a designated storing location. In addition, eachapplication of the fifth embodiment can convert scanned data into aplurality of types of data. One of the plurality of types of data is OCRdata that is obtained by performing character recognizing process on thescanned data.

The compound machine 1200 further includes a control program forselecting an application by which necessary process is performed amongfrom the SCAN to File, SCAN to WEN and SCAN to Mail applications. Thecontrol program displays screens on the operation panel, and necessaryprocess is performed by an application according to an operation on thescreen by the user. The control program may include the authenticationprocess part similar to the authentication process part in the SCAN toWEB application 117.

FIGS. 14-17 show transition of screens displayed on the operationdisplay part of the operation panel of the compound machine 1200 of thefifth embodiment.

FIG. 14 shows a screen in which it is determined to send OCR data to aspecified directory in a WEB server. In this state, if a document is setand a copy button is pushed, the scanned data that is converted into OCRdata is sent to the specified location.

When the transfer destination add button is pushed in the screen of FIG.14, a screen shown in FIG. 15 is displayed. In the screen, the userselects one of Mail, WEB and File buttons. By pushing Mail button, thescanned data is to be sent to a destination by e-mail. By pushing WEBbutton, the scanned data is to be sent to a WEB server. By pushing aFile button, the scanned data is to be stored in a shared file on thenetwork.

In FIG. 15, for example, when the File button 13 is selected, a screenshown in FIG. 16 is displayed. When the Mail button 11 is selected, alist of mail addresses is displayed. When the WEB button 12 is selected,the screen shown in FIG. 5C is displayed. Data such as the mailaddresses can be obtained from UCS (user control service) that managesinformation on users. For example, by using the UCS, only destinationaddresses for a specific user of the compound machine 1200 can belisted.

In the screen of FIG. 16, when a transfer destination that requires anID and a password to access is selected, a screen for inputting an IDand a password is displayed. In this case, the ID and the password inputfrom the screen are used to access the transfer destination.

After the transfer destination is selected, a screen shown in FIG. 17 isdisplayed. From the screen, a data type of data to be transferred isselected. The scanned data is converted into data of the selected datatype and is transferred. After the selection of FIG. 17 ends, the screenis returned to FIG. 14 in which a transfer destination is added. Afterthat, by pushing copy button, a document is scanned and the scanned datais transferred by an application according to the transfer destination.

As mentioned above, access to the transfer destination can be restrictedby using the ID and the password. In addition to that, when using e-mailfor transferring data, the destination can be restricted according tousers. For example, the compound machine 1200 can be set such that ane-mail can not be sent to predetermined domains for a specific user.

In the above-mentioned example, programs of SCAN to Mail application,SCAN to File application, SCAN to WEB application and the controlprogram are separated. Thus, if there are a plurality of transferdestinations, the scanning process is performed by an application thatoperates first. Transferring process after the scanning process isperformed by each application. In stead of providing the SCAN to Mailapplication, SCAN to File application, SCAN to WEB application and thecontrol program separately, these can be configured as one application.In this case, a configuration example of the application is shown inFIG. 18. As shown in FIG. 18, the application includes a scanningprocess part 1201, an authentication process part 1202, a control part1203 (including display capability), a Mail transfer part 1204, a WEBtransfer part 1205, a File transfer part 1206 and a conversion part1207. In the application, under the control by the control part 1203,each part performs each process. For example, when a Mail address andOCR data are selected by the user, the control part 1203 stores theselected Mail address in a memory. Then, when the copy button is pushedand a document is scanned, the control part 1203 causes the conversionpart 1207 to perform OCR conversion, and causes the Mail transfer part1204 to send the converted data to the stored Mail address.

According to the fifth embodiment, since the transfer destination can beselected, the scanned data can be used further efficiently.

Each application described in each embodiment can be installed in thecompound machine from a recording medium such as a SD card. In addition,the application can be installed in the compound machine via a network.

The present invention is not limited to the specifically disclosedembodiments, and variations and modifications may be made withoutdeparting from the scope of the present invention.

1. An image forming apparatus comprising an operation panel and hardwareresources used for image formation including a scanner engine, anapplication, and a platform that exists between the application and thehardware resources, the platform including an OS and at least onecontrol service to control an execution of each requested processing ofthe hardware resources according to a function call from theapplication, wherein interprocess communication is performed between thecontrol service and the application, the application causing the imageforming apparatus to function as: a display part configured to display aselection screen for selecting a transfer destination of scanned datafrom among a plurality of transfer destinations on the operation panel;a scanning process part configured to cause the scanner engine to scan adocument to produce scanned data; a transfer part configured to transferthe scanned data to one or more selected transfer destinations; and aprint process part configured to receive the scanned data from a storingarea of the selected transfer destination and print the scanned data. 2.The image forming apparatus as claimed in claim 1, wherein the one ormore selected transfer destinations include one or more of a storingarea on a WEB server on a network, a mail destination, and a sharedstoring area on a network.
 3. The image forming apparatus as claimed inclaim 2, wherein, if authentication information is required foraccessing the storing area or the shared storing area, the display partdisplays a screen for inputting the authentication information when thestoring area or the shared storing area is selected.
 4. The imageforming apparatus as claimed in claim 1, wherein the display partdisplays a screen for selecting a data type of scanned data to betransferred among from a plurality of data types, and the transfer partconverts the scanned data into data of the data type, and transfers thedata of the data type.
 5. The image forming apparatus as claimed inclaim 4, wherein the plurality of data types include a type ofrecognized data that is obtained by performing character recognitionprocess on the scanned data.
 6. The image forming apparatus as claimedin claim 5, wherein, when the recognized data is selected as a datatype, the transfer part sends the recognized data and the scanned datato a transfer destination.
 7. The image forming apparatus as claimed inclaim 1, wherein the print process part displays, on the operationpanel, a data selection screen for displaying a list of scanned datastored in the storing area, and prints scanned data selected from thelist.
 8. The image forming apparatus as claimed in claim 1, the imageforming apparatus further comprising hardware resources used for imageforming processes, and control services that perform processes of asystem side including control of the hardware resources according to arequest from an application, wherein the image forming apparatus isconfigured so as to be able to install a plurality of applicationsseparately from the control services, and the image forming apparatusincludes the scanning process part, the display part and the transferpart as an application.
 9. A scanned data process method used in animage forming apparatus including an operation panel and hardwareresources used for image formation including a scanner engine, anapplication, and a platform that exists between the application and thehardware resources, the platform including an OS and at least onecontrol service to control an execution of each requested processing ofthe hardware resources according to a function call from theapplication, the scanned data process method comprising: performinginterprocess communication between the control service and theapplication; executing the function by the application in response tothe performing interprocess communication, and causing the image formingapparatus to further perform a method including displaying a selectionscreen for selecting a transfer destination of scanned data from among aplurality of transfer destinations on the operation panel; causing thescanner engine to scan a document to produce scanned data; transferringthe scanned data to one or more selected transfer destinations; andreceiving the scanned data from a storing area of the transferdestination and printing the scanned data on a print process partincluded in the image forming apparatus.
 10. The scanned data processmethod as claimed in claim 9, wherein the one or more selected transferdestinations include one or more of a storing area on a WEB server on anetwork, a mail destination, and a shared storing area on a network. 11.The scanned data process method as claimed in claim 10, wherein, ifauthentication information is required for accessing the storing area orthe shared storing area, the image forming apparatus displays a screenfor inputting the authentication information when the storing area orthe shared storing area is selected.
 12. The scanned data process methodas claimed in claim 9, wherein the image forming apparatus displays ascreen for selecting a data type of scanned data to be transferred amongfrom a plurality of data types, converts the scanned data into data ofthe data type, and transfers the data of the data type.
 13. The scanneddata process method as claimed in claim 12, wherein the plurality ofdata types include a type of recognized data that is obtained byperforming character recognition process on the scanned data.
 14. Thescanned data process method as claimed in claim 13, wherein, when therecognized data is selected as a data type, the image forming apparatussends the recognized data and the scanned data to a transferdestination.
 15. The scanned data process method as claimed in claim 9,wherein the image forming apparatus displays, on the operation panel, adata selection screen for displaying a list of scanned data stored inthe storing area, and prints scanned data selected from the list. 16.The scanned data process method as claimed in claim 9, the image formingapparatus further comprising hardware resources used for image formingprocesses, and control services that perform processes of a system sideincluding control of the hardware resources according to a request froman application, wherein the image forming apparatus is configured so asto be able to install a plurality of applications separately from thecontrol services, and an application in the image forming apparatuscauses the image forming apparatus to perform the scanning step, thedisplaying step and the transfering step.
 17. An image forming apparatuscomprising an operation panel and hardware resources used for imageformation including a scanner engine, an application, and a platformthat exists between the application and the hardware resources, theplatform including an OS and at least one control service to control anexecution of each requested processing of the hardware resourcesaccording to a function call from the application, wherein interprocesscommunication is performed between the control service and theapplication, the application causing the image forming apparatus tofunction as: means for displaying a selection screen for selecting atransfer destination of scanned data from among a plurality of transferdestinations on the operation panel; means for causing the scannerengine to scan a document to produce scanned data; means fortransferring the scanned data to one or more selected transferdestinations; and means for receiving the scanned data from a storingarea of the selected transfer destination selected and for printing thescanned data.
 18. A computer readable medium encoded with computerexecutable instructions, wherein the instructions, when executed on animage forming apparatus including an operation panel and hardwareresources used for image formation including a scanner engine, anapplication, and a platform that exists between the application and thehardware resources, the platform including an OS and at least onecontrol service to control an execution of each requested processing ofthe hardware resources according to a function call from theapplication, cause the image forming apparatus to perform a methodcomprising: performing interprocess communication between the controlservice and the application; executing the function by the applicationin response to the performing interprocess communication, and causingthe image forming apparatus to further perform a method includingdisplaying a selection screen for selecting a transfer destination ofscanned data from among a plurality of transfer destinations on theoperation panel; causing the scanner engine to scan a document toproduce scanned data; transferring the scanned data to one or moreselected transfer destinations; and receiving the scanned data from astoring area of the transfer destination and printing the scanned dataon a print process part included in the image forming apparatus.